Chapter 8 Differential abundance analysis

8.1 CC acclimation vs post2

8.1.1 Enrichment analysis: Ancombc2

8.1.1.1 Structural zeros

# A tibble: 181 × 14
# Rowwise: 
   genome                present average domain      phylum               class    order family genus species completeness contamination length    gc
   <chr>                 <chr>     <dbl> <chr>       <chr>                <chr>    <chr> <chr>  <chr> <chr>          <dbl>         <dbl>  <dbl> <dbl>
 1 AH1_2nd_11:bin_000008 accli     6.79  d__Bacteria p__Verrucomicrobiota c__Verr… o__V… f__Ak… g__A… s__            100            0.12 3.05e6  0.58
 2 AH1_2nd_1:bin_000039  accli     5.96  d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ma… g__O… s__             99.5          0.1  3.92e6  0.44
 3 AH1_2nd_17:bin_000010 accli     2.61  d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ri… g__M… s__             98.1          0.06 2.37e6  0.44
 4 AH1_2nd_17:bin_000038 accli     2.42  d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ba… g__B… s__             88.0          3.29 4.26e6  0.4 
 5 AH1_2nd_14:bin_000005 accli     2.19  d__Bacteria p__Bacillota_A       c__Clos… o__L… f__La… g__   s__             97.1          0.82 3.93e6  0.3 
 6 AH1_2nd_5:bin_000002  accli     1.63  d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ma… g__O… s__             99.6          0.04 3.60e6  0.45
 7 AH1_2nd_12:bin_000015 accli     1.52  d__Bacteria p__Bacillota         c__Baci… o__E… f__Co… g__T… s__            100            7.76 3.79e6  0.31
 8 AH1_2nd_8:bin_000020  accli     1.25  d__Bacteria p__Pseudomonadota    c__Alph… o__R… f__RU… g__   s__             99.6          0    8.93e5  0.36
 9 AH1_2nd_1:bin_000028  accli     1.15  d__Bacteria p__Pseudomonadota    c__Alph… o__R… f__UB… g__C… s__             98.0          0    9.35e5  0.28
10 AH1_2nd_12:bin_000063 accli     0.911 d__Bacteria p__Bacillota_A       c__Clos… o__L… f__La… g__C… s__             72.2          2.05 3.51e6  0.42
# ℹ 171 more rows

8.1.1.2 MAG level

8.2 CC acclimation vs post1

8.2.1 Enrichment analysis: Ancombc2

8.2.1.1 Structural zeros

# A tibble: 206 × 14
# Rowwise: 
   genome                present average domain      phylum               class    order family genus species completeness contamination length    gc
   <chr>                 <chr>     <dbl> <chr>       <chr>                <chr>    <chr> <chr>  <chr> <chr>          <dbl>         <dbl>  <dbl> <dbl>
 1 AH1_2nd_1:bin_000006  accli     13.1  d__Bacteria p__Bacillota_A       c__Clos… o__L… f__La… g__K… s__             98.5          4.38 4.26e6  0.44
 2 AH1_2nd_18:bin_000011 accli     10.1  d__Bacteria p__Bacillota         c__Baci… o__E… f__Co… g__C… s__             98.4          7.24 3.68e6  0.3 
 3 AH1_2nd_11:bin_000008 accli      6.79 d__Bacteria p__Verrucomicrobiota c__Verr… o__V… f__Ak… g__A… s__            100            0.12 3.05e6  0.58
 4 AH1_2nd_17:bin_000023 accli      6.31 d__Bacteria p__Bacillota         c__Baci… o__E… f__Co… g__C… s__             90.2          1.72 3.37e6  0.31
 5 LI1_2nd_4:bin_000026  accli      6.09 d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ma… g__O… s__             99.4          3.28 4.76e6  0.44
 6 AH1_2nd_1:bin_000039  accli      5.96 d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ma… g__O… s__             99.5          0.1  3.92e6  0.44
 7 AH1_2nd_17:bin_000010 accli      2.61 d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ri… g__M… s__             98.1          0.06 2.37e6  0.44
 8 AH1_2nd_17:bin_000038 accli      2.42 d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ba… g__B… s__             88.0          3.29 4.26e6  0.4 
 9 AH1_2nd_20:bin_000016 accli      2.27 d__Bacteria p__Bacillota         c__Baci… o__E… f__Er… g__   s__             97.5          3.86 4.01e6  0.37
10 AH1_2nd_14:bin_000005 accli      2.19 d__Bacteria p__Bacillota_A       c__Clos… o__L… f__La… g__   s__             97.1          0.82 3.93e6  0.3 
# ℹ 196 more rows

8.2.1.2 MAG level

8.3 WC acclimation vs post2

8.3.1 Enrichment analysis: Ancombc2

8.3.1.1 Structural zeros

# A tibble: 134 × 14
# Rowwise: 
   genome                present average domain      phylum          class         order family genus species completeness contamination length    gc
   <chr>                 <chr>     <dbl> <chr>       <chr>           <chr>         <chr> <chr>  <chr> <chr>          <dbl>         <dbl>  <dbl> <dbl>
 1 AH1_2nd_13:bin_000004 accli      2.13 d__Bacteria p__Bacillota_A  c__Clostridia o__L… f__La… g__   s__             97.0          0.58 3.76e6  0.42
 2 LI1_2nd_2:bin_000048  accli      2.07 d__Bacteria p__Bacillota    c__Bacilli    o__E… f__Co… g__C… s__             86.9          4.89 3.16e6  0.31
 3 AH1_2nd_12:bin_000008 accli      1.99 d__Bacteria p__Bacillota    c__Bacilli    o__L… f__St… g__L… s__Lac…         99.9          0.2  2.05e6  0.38
 4 LI1_2nd_3:bin_000015  accli      1.98 d__Bacteria p__Bacillota    c__Bacilli    o__S… f__St… g__S… s__Sta…         91.7          3.54 2.96e6  0.32
 5 LI1_2nd_8:bin_000044  accli      1.47 d__Bacteria p__Bacillota_A  c__Clostridia o__O… f__Ru… g__A… s__             80.1          3.35 2.72e6  0.62
 6 LI1_2nd_2:bin_000030  accli      1.14 d__Bacteria p__Bacillota    c__Bacilli    o__R… f__UB… g__C… s__             91.6          1.86 1.13e6  0.28
 7 LI1_2nd_2:bin_000002  accli      1.10 d__Bacteria p__Bacillota_A  c__Clostridia o__O… f__Ru… g__R… s__             94.7          2.65 2.84e6  0.53
 8 AH1_2nd_6:bin_000006  accli      1.09 d__Bacteria p__Bacillota_A  c__Clostridia o__L… f__La… g__J… s__             99.8          0.57 3.69e6  0.45
 9 LI1_2nd_1:bin_000052  accli      1.07 d__Bacteria p__Bacillota_A  c__Clostridia o__T… f__CA… g__R… s__             83.8          7.54 1.93e6  0.3 
10 AH1_2nd_16:bin_000045 accli      1.07 d__Bacteria p__Bacteroidota c__Bacteroid… o__B… f__Ri… g__A… s__             93.6          6.68 3.45e6  0.59
# ℹ 124 more rows

8.3.1.2 MAG level

8.4 CI acclimation vs post2

8.4.1 Enrichment analysis: Ancombc2

8.4.1.1 Structural zeros

# A tibble: 195 × 14
# Rowwise: 
   genome                present average domain      phylum          class         order family genus species completeness contamination length    gc
   <chr>                 <chr>     <dbl> <chr>       <chr>           <chr>         <chr> <chr>  <chr> <chr>          <dbl>         <dbl>  <dbl> <dbl>
 1 AH1_2nd_1:bin_000006  accli     39.3  d__Bacteria p__Bacillota_A  c__Clostridia o__L… f__La… g__K… s__             98.5          4.38 4.26e6  0.44
 2 LI1_2nd_7:bin_000008  accli      7.37 d__Bacteria p__Bacillota    c__Bacilli    o__E… f__Er… g__B… s__             97.9          2.36 2.62e6  0.3 
 3 AH1_2nd_18:bin_000013 accli      4.35 d__Bacteria p__Bacteroidota c__Bacteroid… o__B… f__Ta… g__P… s__             98.7          0.01 4.01e6  0.43
 4 AH1_2nd_20:bin_000004 accli      2.87 d__Bacteria p__Bacillota_A  c__Clostridia o__L… f__La… g__R… s__            100.           0.43 3.73e6  0.42
 5 AH1_2nd_5:bin_000054  accli      2.45 d__Bacteria p__Bacteroidota c__Bacteroid… o__B… f__Ba… g__B… s__             86.4          3.24 5.34e6  0.43
 6 AH1_2nd_1:bin_000001  accli      1.71 d__Bacteria p__Bacteroidota c__Bacteroid… o__B… f__Ta… g__P… s__             99.6          1.94 4.53e6  0.51
 7 AH1_2nd_20:bin_000061 accli      1.69 d__Bacteria p__Bacillota    c__Bacilli    o__L… f__En… g__E… s__             92.6          6.02 4.15e6  0.4 
 8 AH1_2nd_16:bin_000008 accli      1.59 d__Bacteria p__Bacillota_A  c__Clostridia o__L… f__    g__   s__             98.4          0.14 3.87e6  0.28
 9 LI1_2nd_3:bin_000007  accli      1.48 d__Bacteria p__Bacillota    c__Bacilli    o__E… f__Er… g__C… s__             99.8          1.24 3.67e6  0.36
10 AH1_2nd_10:bin_000044 accli      1.20 d__Bacteria p__Bacillota_A  c__Clostridia o__L… f__La… g__E… s__             88.9          0.53 3.62e6  0.48
# ℹ 185 more rows

8.4.1.2 MAG level

8.5 CI acclimation vs post1

8.5.1 Enrichment analysis: Ancombc2

8.5.1.1 Structural zeros

# A tibble: 223 × 14
# Rowwise: 
   genome                present average domain      phylum               class    order family genus species completeness contamination length    gc
   <chr>                 <chr>     <dbl> <chr>       <chr>                <chr>    <chr> <chr>  <chr> <chr>          <dbl>         <dbl>  <dbl> <dbl>
 1 AH1_2nd_1:bin_000006  accli     39.3  d__Bacteria p__Bacillota_A       c__Clos… o__L… f__La… g__K… s__             98.5          4.38 4.26e6  0.44
 2 AH1_2nd_19:bin_000005 accli     24.7  d__Bacteria p__Bacillota_A       c__Clos… o__L… f__La… g__R… s__             96.1          0.16 3.94e6  0.42
 3 AH1_2nd_13:bin_000004 accli     11.5  d__Bacteria p__Bacillota_A       c__Clos… o__L… f__La… g__   s__             97.0          0.58 3.76e6  0.42
 4 AH1_2nd_11:bin_000008 accli      9.27 d__Bacteria p__Verrucomicrobiota c__Verr… o__V… f__Ak… g__A… s__            100            0.12 3.05e6  0.58
 5 AH1_2nd_19:bin_000001 accli      8.34 d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ta… g__P… s__             99.7          1.43 4.74e6  0.51
 6 AH1_2nd_19:bin_000038 accli      8.08 d__Bacteria p__Pseudomonadota    c__Alph… o__R… f__    g__   s__             94.6          0    9.32e5  0.37
 7 LI1_2nd_7:bin_000008  accli      7.37 d__Bacteria p__Bacillota         c__Baci… o__E… f__Er… g__B… s__             97.9          2.36 2.62e6  0.3 
 8 AH1_2nd_18:bin_000047 accli      6.98 d__Bacteria p__Bacteroidota      c__Bact… o__B… f__Ta… g__P… s__             87.5          4.81 5.47e6  0.43
 9 AH1_2nd_9:bin_000015  accli      6.88 d__Bacteria p__Desulfobacterota  c__Desu… o__D… f__De… g__D… s__             99.0          0    3.04e6  0.61
10 AH1_2nd_10:bin_000007 accli      6.07 d__Bacteria p__Bacillota_A       c__Clos… o__L… f__    g__   s__             97.5          0.68 3.55e6  0.29
# ℹ 213 more rows

8.5.1.2 MAG level

8.6 post2 CC and CI

8.6.1 Enrichment analysis: Ancombc2

8.6.1.1 Structural zeros

# A tibble: 174 × 14
# Rowwise: 
   genome                present  average domain      phylum             class     order family genus species completeness contamination length    gc
   <chr>                 <chr>      <dbl> <chr>       <chr>              <chr>     <chr> <chr>  <chr> <chr>          <dbl>         <dbl>  <dbl> <dbl>
 1 AH1_2nd_18:bin_000013 cc_post2   36.2  d__Bacteria p__Bacteroidota    c__Bacte… o__B… f__Ta… g__P… s__             98.7          0.01 4.01e6  0.43
 2 AH1_2nd_15:bin_000002 cc_post2    7.12 d__Bacteria p__Cyanobacteriota c__Vampi… o__G… f__Ga… g__L… s__             99.8          0.87 2.11e6  0.37
 3 LI1_2nd_7:bin_000001  cc_post2    4.42 d__Bacteria p__Bacillota_A     c__Clost… o__C… f__Cl… g__S… s__             98.3          1.37 3.94e6  0.28
 4 AH1_2nd_9:bin_000061  cc_post2    4.33 d__Bacteria p__Pseudomonadota  c__Gamma… o__B… f__Bu… g__A… s__             72.8          6.01 3.34e6  0.57
 5 AH1_2nd_7:bin_000015  cc_post2    3.75 d__Bacteria p__Pseudomonadota  c__Alpha… o__R… f__CA… g__C… s__            100            0.49 1.79e6  0.43
 6 AH1_2nd_1:bin_000001  cc_post2    2.77 d__Bacteria p__Bacteroidota    c__Bacte… o__B… f__Ta… g__P… s__             99.6          1.94 4.53e6  0.51
 7 AH1_2nd_7:bin_000006  cc_post2    1.87 d__Bacteria p__Bacillota_A     c__Clost… o__L… f__La… g__J… s__            100            2.39 4.97e6  0.43
 8 AH1_2nd_7:bin_000065  cc_post2    1.49 d__Bacteria p__Bacteroidota    c__Bacte… o__B… f__Ta… g__P… s__             93.7          2.1  5.26e6  0.43
 9 AH1_2nd_7:bin_000038  cc_post2    1.47 d__Bacteria p__Bacillota_A     c__Clost… o__O… f__Ru… g__   s__             91.7          4.31 2.93e6  0.49
10 AH1_2nd_19:bin_000017 cc_post2    1.35 d__Bacteria p__Bacillota_A     c__Clost… o__L… f__La… g__C… s__             92.8          4.49 5.61e6  0.47
# ℹ 164 more rows

8.6.1.2 MAG level

8.7 post2 WC and CI

8.7.1 Enrichment analysis: Ancombc2

####Structural zeros

# A tibble: 161 × 14
# Rowwise: 
   genome                present  average domain      phylum               class   order family genus species completeness contamination length    gc
   <chr>                 <chr>      <dbl> <chr>       <chr>                <chr>   <chr> <chr>  <chr> <chr>          <dbl>         <dbl>  <dbl> <dbl>
 1 AH1_2nd_14:bin_000015 ci_post2   17.8  d__Bacteria p__Bacillota_A       c__Clo… o__C… f__UB… g__   s__             94.8          0    2.02e6  0.36
 2 AH1_2nd_1:bin_000028  ci_post2    4.77 d__Bacteria p__Pseudomonadota    c__Alp… o__R… f__UB… g__C… s__             98.0          0    9.35e5  0.28
 3 AH1_2nd_12:bin_000041 ci_post2    4.76 d__Bacteria p__Bacillota         c__Bac… o__M… f__My… g__M… s__             92.6          0.18 1.01e6  0.27
 4 AH1_2nd_8:bin_000020  ci_post2    4.34 d__Bacteria p__Pseudomonadota    c__Alp… o__R… f__RU… g__   s__             99.6          0    8.93e5  0.36
 5 AH1_2nd_1:bin_000015  ci_post2    4.10 d__Bacteria p__Bacillota_A       c__Clo… o__L… f__La… g__M… s__             96.6          0.56 3.88e6  0.33
 6 AH1_2nd_19:bin_000052 ci_post2    3.95 d__Bacteria p__Verrucomicrobiota c__Ver… o__O… f__LL… g__   s__             92.8          0    8.89e5  0.53
 7 AH1_2nd_2:bin_000034  ci_post2    3.09 d__Bacteria p__Verrucomicrobiota c__Ver… o__O… f__LL… g__   s__             93.8          0    8.62e5  0.56
 8 AH1_2nd_6:bin_000001  ci_post2    2.21 d__Bacteria p__Bacteroidota      c__Bac… o__F… f__We… g__M… s__             98.7          0.1  3.38e6  0.36
 9 AH1_2nd_10:bin_000009 ci_post2    1.72 d__Bacteria p__Desulfobacterota  c__Des… o__D… f__De… g__B… s__             97.9          0.61 3.77e6  0.51
10 AH1_2nd_5:bin_000037  ci_post2    1.67 d__Bacteria p__Bacillota_A       c__Clo… o__O… f__Os… g__P… s__             93.4          7.74 3.92e6  0.58
# ℹ 151 more rows

8.7.1.1 MAG level

8.8 Community level plots

accli_post2<-sample_metadata%>% 
  filter(time_point == "1_Acclimation"|time_point == "6_Post-FMT2")
accli_post2$newID<-paste(accli_post2$type, "_", accli_post2$time_point)

GIFTs_functions_community %>%
  as.data.frame() %>%
  rownames_to_column("sample") %>%
  left_join(accli_post2, by = join_by(sample == Tube_code)) %>%
  filter(time_point == "1_Acclimation"|time_point == "6_Post-FMT2") %>%
  select(c(1:29, 36,39)) %>%
  pivot_longer(-c(sample,type,time_point),names_to = "trait", values_to = "value") %>%
  mutate(trait = case_when(
    trait %in% GIFT_db3$Code_function ~ GIFT_db3$Function[match(trait, GIFT_db3$Code_function)],
    TRUE ~ trait
  )) %>%
  mutate(trait=factor(trait,levels=unique(GIFT_db3$Function))) %>%
  ggplot(aes(x=value, y=time_point, group=time_point, fill=type, color=type)) +
  geom_boxplot() +
  scale_color_manual(name="type",
                     breaks=c("Control","Hot_control", "Treatment"),
                     labels=c("Cold-Cold","Hot-Hot", "Cold-Hot"),
                     values=c("#4477AA","#d57d2c","#76b183")) +
  scale_fill_manual(name="type",
                    breaks=c("Control","Hot_control", "Treatment"),
                    labels=c("Cold-Cold","Hot-Hot", "Cold-Hot"),
                    values=c("#4477AA50","#d57d2c50","#76b18350")) +
  facet_grid(trait ~ type, space="free", scales="free") +
  theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1),
        strip.text.y = element_text(angle = 0)) + 
  labs(y="Traits",x="Metabolic capacity index")

GIFTs_elements_community_merged<-GIFTs_elements_community %>%
    as.data.frame() %>%
    rownames_to_column(var="sample") %>%
    filter(sample!="AD69") %>%
    pivot_longer(!sample,names_to="trait",values_to="gift") %>%
    left_join(sample_metadata, by = join_by(sample == Tube_code))%>%
    filter(time_point=="1_Acclimation"|time_point == "6_Post-FMT2")%>%
    mutate(functionid = substr(trait, 1, 3)) %>%
    mutate(trait = case_when(
      trait %in% GIFT_db3$Code_element ~ GIFT_db3$Element[match(trait, GIFT_db3$Code_element)],
      TRUE ~ trait
    )) %>%
    mutate(functionid = case_when(
      functionid %in% GIFT_db3$Code_function ~ GIFT_db3$Function[match(functionid, GIFT_db3$Code_function)],
      TRUE ~ functionid
    )) %>%
    mutate(trait=factor(trait,levels=unique(GIFT_db3$Element))) %>%
    mutate(functionid=factor(functionid,levels=unique(GIFT_db3$Function)))

# Create an interaction variable for time_point and sample
GIFTs_elements_community_merged$interaction_var <- interaction(GIFTs_elements_community_merged$sample, GIFTs_elements_community_merged$time_point)
  
ggplot(GIFTs_elements_community_merged,aes(x=interaction_var,y=trait,fill=gift)) +
        geom_tile(colour="white", linewidth=0.2)+
        scale_fill_gradientn(colours=rev(c("#d53e4f", "#f46d43", "#fdae61", "#fee08b", "#e6f598", "#abdda4", "#ddf1da")))+
        facet_grid(functionid ~ type, scales="free",space="free") +
        theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1, size=5),
              strip.text.y = element_text(angle = 0)) + 
        labs(y="Traits",x="Time_point",fill="GIFT")+
  scale_x_discrete(labels = function(x) gsub(".*\\.", "", x))

8.9 Wilcoxon comparison

8.9.1 Community elements differences: in CC acclimation vs post2

difference_table_CC %>% 
  filter(group_color=="Acclimation")
  Elements Acclimation      Post2                      Function     Element Difference group_color
1    T0503   0.1830714 0.01253516 Vitamin transport_Niacin (B3) Niacin (B3)  0.1705362 Acclimation

8.9.2 Community elements differences: in CI acclimation vs post2

difference_table_CI %>% 
  filter(group_color=="Acclimation")

8.9.3 Community elements differences: in WC acclimation vs post2

difference_table_WC %>% 
  filter(group_color=="Acclimation")

8.9.4 Comparison of both population in wild samples

difference_table_WC %>% 
  filter(group_color=="Acclimation")
  Elements Acclimation      Post2                              Function          Element Difference group_color
1    T0211  0.07898304 0.03960845           Amino acid transport_Serine           Serine 0.03937459 Acclimation
2    T0705  0.03026609 0.01792140      Nucleic acid transport_Allantoin        Allantoin 0.01234469 Acclimation
3    T0401  0.08571001 0.03355773    Organic anion transport_Spermidine       Spermidine 0.05215228 Acclimation
4    T0406  0.06660075 0.02039130     Organic anion transport_Succinate        Succinate 0.04620945 Acclimation
5    D0301  0.03445823 0.02175758             Sugar degradation_Lactose          Lactose 0.01270065 Acclimation
6    B0711  0.31689890 0.23431920 Vitamin biosynthesis_Menaquinone (K2) Menaquinone (K2) 0.08257970 Acclimation
7    T0503  0.05906234 0.02697581         Vitamin transport_Niacin (B3)      Niacin (B3) 0.03208653 Acclimation

####Butiryc acid biosynthesis

8.9.5 Comparison of both population in acclimation samples

8.9.6 Comparison of CC and CI in post2 samples

8.9.7 Comparison of CI and WC in post2 samples

8.9.8 Comparison of CI in accli and post1 samples

8.9.9 Comparison of CC in accli and post1 samples